<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<table border="1">
    <caption>员工列表</caption>
    <tr>
        <th>id</th>
        <th>名字</th>
        <th>工作</th>
        <th>工资</th>
        <th>操作</th>
    </tr>
    <!--v-for遍历arr数组 emp为遍历出的每一个对象-->
    <tr v-for="emp in arr">
        <td>{{emp.id}}</td>
        <!--如果在标签的属性中需要使用Vue中的变量   需要使用Vue的属性绑定
        v-bind:属性名=XXX    :属性名=XXX
        -->
        <td><a :href="'/update.html?id='+emp.id">{{emp.name}}</a></td>
        <td>{{emp.job}}</td>
        <td>{{emp.sal}}</td>
        <td><a href="javascript:void(0)" @click="del(emp.id)">删除</a></td>
    </tr>
</table>
<!--引入Vue和axios-->
<script src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.1/axios.min.js"></script>
<script src="https://lf3-cdn-tos.bytecdntp.com/cdn/expire-1-M/vue/2.6.14/vue.js"></script>
<script>
    let v = new Vue({
        el:"table",
        data:{//数组里面放着对象     变量
            arr:[],//将集合放入这个变量中
        },
        created:function (){//页面加载完执行的方法,进入页面立即发请求的代码写在这个方法中---页面加载完立即做
            //          返回List<Emp>
            axios.get("/select").then(function (response){//
                //把服务器返回的数据直接给到数组
                v.arr = response.data;//是个数组    响应
            })
        },
        methods:{
            del:function (id){//del是前端的事件绑定方法
                if (confirm("您确认要删除吗?")){
                    //发出异步请求   逻辑处理   前端传过来的id
                    axios.get("/delete?id="+id).then(function (){
                        alert("删除成功!");
                        location.reload();//刷新页面
                    })
                }
            }
        }
    })
</script>
</body>
</html>